← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Wed Dec 14 16:10:05 2022
Reported on Wed Dec 14 16:12:58 2022

Filename(eval 359)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 133 statements in 485µs
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1033112µs55.7msJSON::Schema::Modern::::_assert__vocabulary_classes JSON::Schema::Modern::_assert__vocabulary_classes
11113µs36µsJSON::Schema::Modern::::BEGIN@7.211 JSON::Schema::Modern::BEGIN@7.211
1115µs5µsMethod::Generate::Accessor::_Generated::::BEGIN@12.212Method::Generate::Accessor::_Generated::BEGIN@12.212
1115µs13µsMethod::Generate::Accessor::_Generated::::BEGIN@24.213Method::Generate::Accessor::_Generated::BEGIN@24.213
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
223µs my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
310s my $default_for__5fvocabulary_5fclasses = ${$_[1]->{"\$default_for__5fvocabulary_5fclasses"}};
411µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
510s my $isa_check_for__5fvocabulary_5fclasses = ${$_[1]->{"\$isa_check_for__5fvocabulary_5fclasses"}};
6 package JSON::Schema::Modern;
7270µs259µs
# spent 36µs (13+23) within JSON::Schema::Modern::BEGIN@7.211 which was called: # once (13µs+23µs) by Sub::Quote::_clean_eval at line 7
no warnings 'closure';
# spent 36µs making 1 call to JSON::Schema::Modern::BEGIN@7.211 # spent 23µs making 1 call to warnings::unimport
8
# spent 55.7ms (112µs+55.6) within JSON::Schema::Modern::_assert__vocabulary_classes which was called 10 times, avg 5.57ms/call: # 8 times (6µs+0s) by JSON::Schema::Modern::_get_vocabulary_class at line 17 of (eval 358)[Sub/Quote.pm:3], avg 750ns/call # once (101µs+55.6ms) by JSON::Schema::Modern::_get_vocabulary_values at line 17 of (eval 357)[Sub/Quote.pm:3] # once (5µs+0s) by JSON::Schema::Modern::_set_vocabulary_class at line 17 of (eval 356)[Sub/Quote.pm:3]
sub _assert__vocabulary_classes {
9 ($_QUOTED,$_UNQUOTED) if 0;
10# BEGIN quote_sub PRELUDE
11package Method::Generate::Accessor::_Generated;
12
# spent 5µs within Method::Generate::Accessor::_Generated::BEGIN@12.212 which was called: # once (5µs+0s) by Sub::Quote::_clean_eval at line 17
BEGIN {
1310s $^H = 2018;
1411µs ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
1513µs %^H = (
16 );
17132µs15µs}
18# END quote_sub PRELUDE
191020µsdo {
20 my $val = exists $_[0]->{"_vocabulary_classes"} ?
21$_[0]->{"_vocabulary_classes"}
22104µs: do {
2313µs155.4ms my $value = $default_for__5fvocabulary_5fclasses->($_[0]);
2479337µs44181µs
# spent 13µs (5+8) within Method::Generate::Accessor::_Generated::BEGIN@24.213 which was called: # once (5µs+8µs) by Sub::Quote::_clean_eval at line 24
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($value)) and do { my $ok = 1; for my $i (values %{$value}) { ($ok = 0, last) unless do { package Type::Tiny; (Ref::Util::XS::is_plain_arrayref($i)) and @{$i} == 2 and (defined($i->[0]) and !ref($i->[0]) and $i->[0] =~ m{\A(?:draft(?:20(?:19\-09|20\-12)|7))\z}) and ((do { package Type::Tiny; Types::Standard::_is_class_loaded(do { my $tmp = $i->[1] }) }) && (do { local $_ = $i->[1]; $_->DOES('JSON::Schema::Modern::Vocabulary') })) } }; $ok } }) or Type::Tiny::_failed_check($isa_check_for__5fvocabulary_5fclasses, "HashRef[Tuple[Enum[\"draft7\",\"draft2019-09\",\"draft2020-12\"],__ANON__]]", $value, "attribute_name","_vocabulary_classes","attribute_step","isa check","mgaca","0","varname","\$self->{\"_vocabulary_classes\"}"); $value };
# spent 40µs making 14 calls to Types::Standard::__ANON__[(eval 46)[Types/Standard.pm:48]:16], avg 3µs/call # spent 38µs making 2 calls to JSON::Schema::Modern::Vocabulary::Core::DOES, avg 19µs/call # spent 18µs making 2 calls to JSON::Schema::Modern::Vocabulary::Content::DOES, avg 9µs/call # spent 13µs making 1 call to Method::Generate::Accessor::_Generated::BEGIN@24.213 # spent 12µs making 2 calls to JSON::Schema::Modern::Vocabulary::Applicator::DOES, avg 6µs/call # spent 12µs making 2 calls to JSON::Schema::Modern::Vocabulary::FormatAnnotation::DOES, avg 6µs/call # spent 10µs making 2 calls to JSON::Schema::Modern::Vocabulary::Validation::DOES, avg 5µs/call # spent 9µs making 2 calls to JSON::Schema::Modern::Vocabulary::MetaData::DOES, avg 4µs/call # spent 8µs making 1 call to JSON::Schema::Modern::Vocabulary::FormatAssertion::DOES # spent 8µs making 1 call to warnings::unimport # spent 7µs making 1 call to JSON::Schema::Modern::Vocabulary::Unevaluated::DOES # spent 6µs making 14 calls to Type::Tiny::CORE:match, avg 429ns/call
2511µs $_[0]->{"_vocabulary_classes"} = $value
26 }
27;
28101µs exists $_[0]->{"_vocabulary_classes"}
29 or Carp::croak(q{Attempted to access '}."_vocabulary_classes".q{' but it is not set});
30102µs $val;
31}
32 }
3311µs $$_UNQUOTED = \&_assert__vocabulary_classes;
34}
3516µs1;
36
37;